#include "head.h"
/*
没有互斥锁 会出现 两个 线程 竞态 的 问题
代码如下
*/

int int_val = 50;

void * func_1(void * vla);
void * func_2(void * vla);


int main(int argc, char const *argv[])
{
    pthread_t tid[2];
    
    // 创建线程
    pthread_create( &tid[0] , NULL ,  func_1 , NULL);
    pthread_create( &tid[1] , NULL ,  func_2 , NULL);

    // 回收线程
    pthread_join(tid[0] , NULL);
    pthread_join(tid[1] , NULL);

    return 0;
}



void * func_1(void * vla)
{
    while (1)
    {
        printf("线程1 开始消费\n");
        int_val = int_val - 2;
        sleep(2);
        printf("线程 1 int_val = %d\n" , int_val);
    }
    
}

void * func_2(void * vla)
{
    while (1)
    {
        printf("线程2 开始消费\n");
        int_val = int_val - 4;
        sleep(2);
        printf("线程 2 int_val = %d\n" , int_val);
    }
}

